The present invention relates to data communications in general and, in particular, to adaptive coding and modulation.
Service providers may desire to use communication systems to provide high availability to high-quality services for their subscribers. When data is transmitted from one point in a network to another, the data may pass through a number of network elements. For example, data may be sent through a number of network access units (e.g., modems, antennae, etc.), a number of router modules (e.g., routers, DSLAMs, gateways, etc.), communication links between those and/or other units, etc.
Typically, conditions may differ across regions and elements of the network, which may affect the apparent availability or quality of communications with respect to various nodes of the network. For example, each communication link may have certain characteristics (e.g., bandwidth, throughput, error rate, etc.) and may experience different traffic patterns. Moreover, certain communication links may be oversubscribed in some cases. For example, a network provider may statistically oversubscribe network resources to account for different usage patterns throughout the network and/or over time. These and other regional network characteristics may create certain inefficiencies, like load imbalances, bottlenecks, and decreases in data integrity.
Many typical techniques for addressing these load imbalances include detecting affected areas of the network (e.g., bottlenecks) and routing data around those areas. However, it may be difficult to determine the optimal routing path for different types of data under different link conditions. Further, simply rerouting the data may not fully account for differences in links making up a given routing path to provide an optimal solution. For example, certain pre-coding, coding, and modulation techniques may be more or less conducive to certain link conditions.
As such, it may be desirable to provide methods and systems for handling load imbalances and other network conditions by using adaptive pre-coding, coding, and/or modulation techniques.